package com.example.pages;

import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.FindBy;

public class LoginPage extends AnyPage{

    @FindBy(id = "loginform")
    public WebElement loginForm;

    @FindBy(id = "username")
    public WebElement userNameField;

    @FindBy(name = "password")
    public WebElement passwordField;

    @FindBy(name = "submit")
    public WebElement loginButton;

    public boolean isOnThisPage(){
        return loginForm.isDisplayed();
    }

    @Override
    void tryToOpen(){
        MyPageFactory.getPage(driver, InternalPage.class).logout();
    }

    public InternalPage loginWithValidCredentials(String login, String password) {
        userNameField.sendKeys(login);
        passwordField.sendKeys(password);
        loginButton.click();
        return MyPageFactory.getPage(driver, InternalPage.class);
    }
    
    public LoginPage loginWithWrongCredentials(String login, String password){
        userNameField.sendKeys(login);
        passwordField.sendKeys(password);
        loginButton.click();
        return MyPageFactory.getPage(driver, LoginPage.class);
    }
}
